package anonymus.negocio;

import anonymus.dao.canchaDAO;
import anonymus.modelo.Cancha;
import anonymus.modelo.Horario;
import anonymus.modelo.Local;
import anonymus.excepcion.DAOExcepcion;
import java.util.Collection;

public class CanchaNegocio {

	public void insertarCancha(String nombreCancha,
			String caracteristicasCancha, String foto, Local local,
			Collection<Horario> horarios) throws DAOExcepcion {

		if (nombreCancha == null || caracteristicasCancha == null
				|| foto == null || local == null || horarios == null) {
			System.out.println("INVALIDOS PARAMETROS");
			throw new DAOExcepcion("INVALIDOS PARAMETROS");
		} else {
			Cancha cancha = new Cancha();
			cancha.setNombreCancha(nombreCancha);
			cancha.setCaracteristicasCancha(caracteristicasCancha);
			cancha.setFoto(foto);
			cancha.setLocal(local);
			cancha.setHorario(horarios);

			canchaDAO dao = new canchaDAO();
			try {
				dao.insertar(cancha);
			} catch (DAOExcepcion e) {
				throw new DAOExcepcion("ERROR INSERTAR CANCHA");
			}
			HorarioNegocio hn = new HorarioNegocio();
			hn.insertarHorarios(cancha.getCodCancha(),cancha.getHorario());
			
		}
	}

	public Collection<Cancha> buscarCanchas( String distrito, String dia, String horaInicio, String horaFin) throws DAOExcepcion{
		
		canchaDAO dao = new canchaDAO();
		Collection<Cancha> Cancha = dao.buscarCancha(distrito,dia,horaInicio,horaFin);
		return Cancha;

	}

	public Collection<Cancha> buscarAlquilerCanchas( String nombreLoc, String diaInicio, String diaFin) throws DAOExcepcion{
		
		canchaDAO dao = new canchaDAO();
		return dao.buscarAlquilerCancha(nombreLoc,diaInicio,diaFin);
		

	}
	
	public Collection<Cancha> ListarCancha() throws DAOExcepcion {
        
        canchaDAO dao = new canchaDAO();
                return dao.ListarCancha();
        }
	
	public Collection<Cancha> obtener() throws DAOExcepcion {
        
        canchaDAO dao = new canchaDAO();
                return dao.obtener();
        }
	
	public Collection<Local> listarDistritos() throws DAOExcepcion {
        canchaDAO dao = new canchaDAO();
        return dao.listarDistritos();
	} 
}
